package jt.classic.app.dms.scanner;

import java.io.File;


/**
 * 文档ftp上传文件检查器
 * <p>用于检查ftp是否已经上传了完整的文件,然后对文件进行重命名(*.dff)</p>
 *
 * @author mido
 *
 */
public class DMSFtpFileChecker {
    /**
     * 检查可用于ftp处理的文件
     * @param file ftp上传文件
     * @param beginTime 上传文件最后修改时间
     * @param timeOut 延时
     * @return boolean
     * @throws InterruptedException
     */
    public boolean checkFtpFile(File file, long beginTime, int timeOut)
        throws InterruptedException {
        File temp = new File(file.getParent(), file.getName() + ".dff");

        boolean rnt = false;

        while (true) {
            /*可被重命名*/
            if (file.renameTo(temp) && temp.renameTo(file)) {
                rnt = true;

                break;
            } else {
                //System.out.println("waiting for release");
                Thread.sleep(timeOut);
            }
        }

        return rnt;
    }
}
